Method and device for searching for information in applications

ABSTRACT

A method and device for searching for information in applications. The method comprises: determining at least one target application carrying declaration information, wherein the declaration information comprises search interface information for searching the target application (S11); sending a search keyword from a user to the target application via the search interface information for the target application (S12); receiving search result information determined by the target application according to the search keyword, wherein the search result information comprises the search keyword and page paths of target pages (S13); and generating a search display list according to the search result information. Thus search results from different applications can be summarized, and information isolation among applications can be broken. Information in applications can be obtained via the search interfaces, which can realize real-time search and enrich contents of search.

CROSS REFERENCE TO THE RELATED APPLICATION

This application is the continuation application of InternationalApplication No. PCT/CN2018/125604, filed on Dec. 29, 2018, which isbased upon and claims priority to Chinese Patent Application No.201810382710.3, filed on Apr. 26, 2018, the entire contents of which areincorporated herein by reference.

FIELD

The present application relates to computers, more specifically relatesto a method and a device for searching for information in applications.

BACKGROUND

With increasing activities of people on the Internet and vigorousdevelopment of Internet technology, the number of search engines ariseto provide search services for netizens. In the Internet era of personalcomputers (PCs), webpages (Webs) are mainly searched, and searchservices are provided by crawling Web contents with Web crawlingtechnology. While in the mobile Internet era, page contents from mobileapplications (APPs) are mainly searched. However, each of the APPs isisolated from each other, which forms isolated islands of information,and causes the traditional crawling search technology unusable.

SUMMARY

One objective of the present application is to provide a method anddevice for searching for information in applications, which can solveproblems of information isolation among applications and inability toprovide users with page contents information from multiple applicationsin the prior art.

According to an aspect of the application, it is provided a method forsearching for information in applications. The method comprises:

determining at least one target application carrying declarationinformation, wherein the declaration information comprises searchinterface information for searching the target application;

sending a search keyword from a user to the target application via thesearch interface information for the target application;

receiving search result information determined by the target applicationaccording to the search keyword, wherein the search result informationcomprises the search keyword and page paths of target pages; and

generating a search display list according to the search resultinformation.

Further, the search display list comprises any combination of one ormore of the search keyword, source application information of the targetpages, summary information corresponding to the search keyword, and pagepaths of the target pages.

Further, generating a search display list according to the search resultinformation comprises:

ranking search results according to a preset rule to obtain the searchdisplay list, where any combination of one or more of the searchkeyword, source application information, summary informationcorresponding to the search keyword and a page path of a target page,which correspond to each of the target pages, are sequentiallydisplayed.

Further, determining at least one target application carrying thedeclaration information comprises at least one of:

determining at least one target application carrying the declarationinformation from a list of installed applications of a user equipment;

obtaining, from a network device, a list of applications carryingdeclaration information, to select, from the list of applications, oneor more target applications whose types are the same as those of theapplications in the list of installed applications of the userequipment; and

obtaining a list of historically installed applications of the userequipment, to determine at least one target application carrying thedeclaration information from the list of historically installedapplications.

Further, ranking the search results according to the preset rulecomprises:

ranking the search results based on historical parameter informationcorresponding to the target pages, wherein the historical parameterinformation comprises installation time of the source applications ofthe target pages, information on the number of clicks on the targetpages by the user, and dwell time on the target pages by the user.

Further, ranking the search results based on the historical parameterinformation corresponding to the target pages comprises:

determining a weight value for each of the target pages based on thehistorical parameter information corresponding to the target page andweight information corresponding to parameters in the historicalparameter information;

ranking the search results according to the weight value for each of thetarget pages.

Further, ranking the search results based on the historical parameterinformation corresponding to the target pages comprises:

determining a weight value for each of the target pages based on thehistorical parameter information corresponding to the target page.

Further, determining the weight value for each of the target pages basedon the historical parameter information corresponding to the target pagecomprises:

ranking the target pages according to the installation time of thesource applications of the target pages to obtain rank information; and

grouping the target pages according to a preset time unit and theinstallation time, and updating the weight value for each of the targetpages according to the number of groups and the rank information.

Further, the method comprises:

updating the weight values for the target pages according to theinformation on the number of clicks on the target pages by the user.

Further, the method comprises:

updating the weight values for the target pages according to a presetlength of time and the dwell time on the target pages by the user.

Further, after the search keyword and the source application informationcorresponding to each of the target pages from the search results aresequentially displayed, the method comprises:

jumping to a source application corresponding to a target page accordingto the user's selection operation and the page path, to display pagecontents information of the target page in the source application.

According to another aspect of the present application, it is alsoprovided a computer readable medium having computer readableinstructions stored thereon, the computer readable instructions beingexecutable by a processor to implement the above mentioned method forsearching for information in applications.

According to yet another aspect of the application, it is also provideda device for searching for information in applications. The devicecomprises:

one or more processors; and

a memory storing computer readable instructions, wherein the computerreadable instructions, when executed, cause the processor to perform theoperations of the above mentioned methods.

Compared with the prior art, the present application determines at leastone target application carrying declaration information, wherein thedeclaration information comprises search interface information forsearching the target application; sends a search keyword from a user tothe target application via the search interface information for thetarget application; receives search result information determined by thetarget application according to the search keyword, wherein the searchresult information comprises the search keyword and page paths of targetpages; generates a search display list according to the search resultinformation. Thus search results from different applications can besummarized, more comprehensive and richer search results can be providedto users, and information isolation among applications can be broken,which prevents users from repeating search operations for the samesearch request in different applications. Information in applicationscan be obtained via the search interfaces, which can realize real-timesearch and enrich contents of search.

DESCRIPTIONS OF THE DRAWINGS

Other features, objects, and advantages of the present application willbecome more apparent by reading the detailed description of non-limitingembodiments with reference to the following drawings:

FIG. 1 shows a schematic flowchart of a method for searching forinformation in applications provided according to one aspect of thepresent application; and

FIG. 2 shows a schematic diagram of an interface display of searchresults in an embodiment of the present application.

The identical or similar reference numerals in the drawings representthe identical or similar components.

DETAILED EMBODIMENTS

The application is further described in detail below with reference tothe accompanying drawings.

In a typical configuration of the present application, a terminal, adevice of a service network and a trusted party all include one or moreprocessors (CPUs), an input/output interface, a network interface and amemory.

The memory may include a non-permanent memory, a random access memory(RAM) and/or a non-volatile memory and the like in a computer-readablemedium, such as a read-only memory (ROM) or a flash memory (flash RAM)).A memory is an example of a computer-readable medium.

A computer-readable medium comprises permanent and non-permanent,movable and non-movable media and may implement information storage bymeans of any method or technology. Information may be computer-readableinstructions, data structures, program modules or other data. Theexamples of a computer storage medium include but are not limited to aphase change memory (PRAM), a static random access memory (SRAM), adynamic random access memory (DRAM), other types of random access memory(RAM), a read-only memory (ROM), an electrically erasable programmableread-only memory (EEPROM), a flash memory or other memory technologies,compact disk read-only memory (CD-ROM), a digital versatile disc (DVD)or other optical storages, a magnetic cassette tape, and magnetic tapeand magnetic disk storage or other magnetic storage devices or any othernon-transmission media, which can be used to store information that canbe accessed by a computing device. According to the definition herein,the computer-readable medium does not include a non-transitorycomputer-readable medium, such as a modulated data signal and a carrier.

FIG. 1 shows a schematic flowchart of a method for searching forinformation in applications provided according to one aspect of thepresent application. The method comprises steps S11 to S14. At step S11,at least one target application carrying declaration information isdetermined, wherein the declaration information comprises searchinterface information for searching the target application. At step S12,a search keyword from a user is sent to the target application via thesearch interface information for the target application. At step S13,search result information determined by the target application accordingto the search keyword is received, wherein the search result informationcomprises the search keyword and page paths of target pages. At StepS14, a search display list is generated according to the search resultinformation. Thus search results from different applications can besummarized, more comprehensive and richer search results can be providedto users, and information isolation among applications can be broken,which prevents users from repeating search operations for the samesearch request in different applications. Information in theapplications can be obtained via the search interfaces, which canrealize real-time search and enrich contents of search.

Specifically, at step S11, at least one target application carryingdeclaration information is determined, wherein the declarationinformation comprises search interface information for searching thetarget application. Here, steps S11 to S14 described in the presentapplication may be executed on a mobile search engine, to search forcontents in applications in a mobile operating system. When obtaininginformation in an application, the information may be obtained through asearch interface for the applications. The search interface may beimplemented through inter-process communication. When an applicationdeclares itself to be searchable, the application can be locatedaccording to the declaration information, and the application withdeclaration that can be located may be used as a target application, toobtain desired contents of search from the target application. In anembodiment of the present application, for example, in an Androidsystem, the inter-process communication may include ContentProvider,Activity (Page), Service, BoardcastReceiver and socket. When anapplication declares itself to be searchable, the declarationinformation it carries comprises search interface information, whereinthe search interface information comprises the way that inter-processcommunication is implemented, such as a search interface implementedwith Activity or socket.

Next, at step S12, a search keyword from a user is sent to the at leastone target application via the search interface information for thetarget application. Here, the search keyword from the user is obtained,and the search keyword is sent to the target application, passed to thetarget application through the search interface, so that the targetapplication performs matching of the search keyword and looks forcorresponding page contents information according to the search keyword.Thus, at step S13, search result information determined by the targetapplication according to the search keyword is received, wherein thesearch result information comprises the search keyword and page paths oftarget pages. Here, each of the target applications is to match contentsof search result according to the passed search keyword, so that thesearch engine obtains the contents of search result returned by thetarget application, wherein the contents of search result may comprisethe search keyword and page paths of target pages. For example, thecontents may be presented as follows:

matching result 1: a corresponding page path (Activity Address)

matching result 2: a corresponding page path (Activity Address).

Of course, the above mentioned way of presenting the contents is merelyan example. Other existing ways of presenting the contents of searchresults or those that may appear in the future fall within theprotection scope of the present application and are incorporated hereinby reference if applicable to the present application.

At Step S14, a search display list is generated according to the searchresult information. Here, the mobile search engine collects searchresults returned by each of the target applications, and generates asearch display list, wherein the search display list may store resultinformation in form of a dictionary. In an embodiment of the presentapplication, the search display list comprises any combination of one ormore of the search keyword, source application information of the targetpages, summary information corresponding to the search keyword, and thepage paths of the target pages. Here, what is in the search display listmay be the keyword and paths of the target pages, wherein the paths ofthe target pages are links to the pages, which is convenient for a userto click to view the corresponding page contents. Of course, thekeyword, page paths of target pages and source application informationmay also be displayed, to facilitate a user to know sources of searchresults and select corresponding search results according to thesources. The search display list may also display summary informationassociated with the search keyword and contents of the target pages,with the search keyword presented in form of an index. A variety ofdisplay interfaces may be provided for a user through layouts of displayinformation of the search display list, and thus the user's search needis satisfied. In an embodiment of the present application, a ternarydictionary may be formed according to the collected search results,wherein the dictionary is determined by the search keyword, a sourceapplication and a page path of the target page, such as:

APP 1: matching result 1: a corresponding page path (Activity Address)

APP 1: matching result 2: a corresponding page path (Activity Address)

APP 2: matching result 1: a corresponding page path (Activity Address)

APP 3: matching result 1: a corresponding page path (Activity Address).

When a list of search results is generated, search result informationmay be ranked to generate a ranked list. Specifically, the searchresults may be ranked according to a preset rule, to obtain the searchdisplay list, where any combination of one or more of the searchkeyword, source application information, summary informationcorresponding to the search keyword and a page path of a target page,which correspond to each of the target pages, are sequentiallydisplayed. In turn, it may jump to the detailed page contentscorresponding to the summary information according to the user'sselection operation, or jump to the source application corresponding tothe target page according to the page path, to display the page contentsinformation from the target page in the source application. In anembodiment of the present application, the search results may be rankedaccording to a preset rule, and the search keyword and sourceapplication information corresponding to each of the pages aresequentially displayed. For example, ranked search results with regardto a search keyword of “cake” may include cake-related pages from APP 1,APP 2, and APP 3 sequentially. As shown in FIG. 2, it will jump to acorresponding APP interface according to the user's operation ofselecting some search result and the corresponding page path. Forexample, the user clicks the search result from APP 1, it may jump to anapplication interface for APP 1, to facilitate the user to directlyperform operations such as placing an order, making an appointment, etc.in APP 1.

In one embodiment, when ranking the search results according to thepreset rule, the search results may be ranked based on historicalparameter information corresponding to the target pages, wherein thehistorical parameter information comprises installation time of thesource applications of the target pages, information on the number ofclicks on the target pages by the user, and dwell time on the targetpages by the user. Here, the search results are ranked comprehensivelybased on installation time of an application, the number of clicks by auser, and dwell time on pages of search results, which is closer touser's inclination of choice and thus improves user experience.

Specifically, a weight value for each of the target pages may bedetermined based on the historical parameter information correspondingto the target pages and weight information corresponding to parametersin the historical parameter information. The search results are rankedaccording to the weight value for each of the target pages. Here, anoccupied weight is set for each of the parameters. For example, a weightfor a parameter of the number of clicks by a user is set to be larger,and a weight for the installation time may be set to be less. Each ofthe parameters is quantified, and then a weight value for each of thetarget pages is calculated according to the set weights. Search resultsare ranked according to their weight values. For example, installationtime of a source application, the number of clicks on the target page bya user, and dwell time on the target page by the user are selected ascalculation parameters. A weight for the installation time is set as0.2, a weight for the number of clicks on the page by the user is set as0.5, and a weight for the dwell time on the target page is set as 0.3.Each of the parameters is quantified and multiplied by its correspondingweight, and then is accumulated, and thus a weight value for a targetpage corresponding to each of the search results is calculated andobtained.

When ranking the search results, a weight value for each of the targetpages may also be determined based on historical parameter informationcorresponding to the target page. That is, the weight value for the pageis calculated for each of the parameters. Specifically,

when the historical parameter information comprises the installationtime of the source applications, the target pages are ranked accordingto the installation time of the source applications of the target pagesto obtain rank information; the target pages are grouped according to apreset time unit and the installation time, and the weight value foreach of the target pages is updated according to the number of groupsand the rank information. Here, for example, at the initial stage,weights for pages (Activities) corresponding to each of keywords=1.Pages are ranked chronologically according to the Installation time, andthen the pages are grouped according to installation date, for example,the pages are grouped by a day, a week, or a month. 0, 1, 2, 3 . . . orn is added respectively from low to high to the weights for the pageswhich have been chronologically ranked, wherein n is the number ofgroups. For example, if the pages are grouped into 4 groups according tothe installation date by a week, then the weights of the pages areincreased respectively from low to high with a maximum of 4 (that is,+0, +1, +2, +3, +4).

When the historical parameter information comprises information on thenumber of clicks on the target page by the user, the weight value foreach of the target pages is updated according to the information on thenumber of clicks on the target page by the user. Here, each time a userclicks some search result, a weight value for the corresponding targetpage is increased by 1. Similarly, when the historical parameterinformation comprises dwell time on pages, the weight value for thetarget page may be set to be updated according to a preset length oftime and the dwell time on the target page by the user. The dwell timeon the target page by the user is counted, for example, in seconds. Eachtime the user dwells on the target page for 10 seconds, the weight valuefor the page is increases by 1. A weight value for each of search resultpages is calculated according to installation time of applications, thenumber of clicks on the pages by a user and dwell time on the pages. Thepages are comprehensively ranked. When a weight value for a page ishigher, a rank for the page is higher, and it is closer to the user'sinclination of choice.

In an embodiment of the present application, at step S11, the targetapplication carrying the declaration information may be determinedthrough any one of:

determining at least one target application carrying the declarationinformation from a list of installed applications of a user equipment;

obtaining, from a network device, a list of applications carryingdeclaration information, to select, from the list of applications, oneor more target applications whose types are the same as those of theapplications in the list of installed applications of the userequipment;

obtaining a list of historically installed applications of the userequipment, to determine at least one target application carrying thedeclaration information from the list of historically installedapplications.

Here, a query is made according to a list of installed applications in asystem of a user equipment for target applications carrying declarationinformation. At this time, it can be implemented in the user equipmentwithout the intervention of a server. Eligible applications in thecurrent equipment are obtained. When searching is performed, searchresults would be page contents from currently installed eligibleapplications. For example, if a user equipment is installed withapplication A, application B and application C which have alreadydeclared themselves to be searchable, then matching application A,application B and application C are directly obtained from the installedlist when searching is performed. The contents information obtained fromthe applications will no longer be page contents from otherapplications.

Of course, in addition to the installed applications, when locatingtarget applications carrying declaration information, a list ofapplications carrying the declaration information may also be obtainedfrom a network device. One or more of the target applications whose typeare the same as those of applications in the list of installedapplications of the user equipment are selected from the list ofapplications. Here, information of other apps whose types are the sameas those of the currently installed applications may be obtained fromthe network device. For example, the user equipment is installed withAPP1 and APP2, but APP3 of the same type is not installed. If APP3 hasdeclared itself to be searchable, contents related to APP3 may beobtained from the network device. Page information from APP 3 is in turndisplayed in a list of search results, which may stimulate the user toinstall APP 3, and some information related to a page from APP3 can bebrowsed in the current search engine without jumping to an applicationinterface of APP3, thereby providing the user with more comprehensivesearch services.

Further, when determining the target applications, a list ofhistorically installed applications of the user equipment may also beobtained. The target applications carrying the declaration informationare determined from the list of historically installed applications.Here, by collecting historical records of APP installations of the userequipment, APPs whose page contents are to be collected are selectedaccording to the installation records. For example, the user equipmentwas historically installed with APP 4. Although it was then deleted, APP4 may also be used as a target application for obtaining page contentsif APP 4 declares itself to be searchable. After a user enters akeyword, search results from APP 4 may be displayed.

In addition, according to another aspect of the present application, itis also provided a computer readable medium having computer readableinstructions stored thereon, the computer readable instructions beingexecutable by a processor to implement the above mentioned method forsearching for information in applications.

In addition, according to yet another aspect of the application, it isalso provided a device for searching for information in applications.The device comprises:

one or more processors; and

a memory storing computer readable instructions, wherein the computerreadable instructions, when executed, cause the processor to perform theoperations of the above mentioned methods.

For example, the computer readable instructions, when executed, causethe one or more processors to:

determine at least one target application carrying declarationinformation, wherein the declaration information comprises searchinterface information for searching the target application;

sending a search keyword from a user to the target application via thesearch interface information for the target application;

receiving search result information determined by the target applicationaccording to the search keyword, wherein the search result informationcomprises the search keyword and page paths of target pages; and

generating a search display list according to the search resultinformation.

Obviously, those skilled in the art can make various modifications andvariations to the present application without departing the spirit andscope of the present application. In this way, if these modificationsand variations of the present application fall within the scope of theclaims of the present application and equivalent technologies thereof,the present application is also intended to encompass thesemodifications and variations.

It should be noted that the present application can be implemented insoftware and/or a combination of software and hardware, for example, byusing an application specific integrated circuit (ASIC), a generalpurpose computer, or any other similar hardware device. In oneembodiment, the software program of the present application can beexecuted by a processor to implement the steps or functions describedabove. Likewise, the software programs (including related datastructures) of the present application can be stored in a computerreadable storage medium such as a RAM memory, a magnetic or opticaldrive or a floppy disk and the like. In addition, some of the steps orfunctions of the present application may be implemented in hardware, forexample, as a circuit that cooperates with a processor to performvarious steps or functions.

In addition, a portion of the present application can be embodied as acomputer program product, such as computer program instructions, whenexecuted by a computer, can invoke or provide a method and/or technicalsolution in accordance with the present application. The programinstructions for invoking the method of the present application may bestored in a fixed or removable storage medium, and/or transmitted by adata stream in a broadcast or other signal carrier medium, and/or storedin a working memory of the computer device in which the programinstructions run. Herein, an embodiment in accordance with the presentapplication includes an apparatus including a memory for storingcomputer program instructions and a processor for executing programinstructions, wherein when the computer program instructions areexecuted by the processor, triggering the apparatus to operate the abovementioned methods and/or technical solutions in accordance with variousembodiments of the present application.

For those skilled in the art, it is apparent that the presentapplication is not limited to the details of the above-mentionedexemplary embodiments, and the present application can be implemented inother specific forms without departing the spirit or basic features ofthe present application. Therefore, the present embodiments are to beconsidered as illustrative and not restrictive. The scope of the presentapplication is defined by the appended claims rather than theabove-mentioned description, and therefore it is intended that allchanges which fall within the meaning and range of equivalency of theclaims are embraced in the present application. Any reference signs inthe claims should not be construed as limiting the claims involved. Inaddition, it is apparent that the word “comprising” does not excludeother elements or steps, and the singular does not exclude the plural. Aplurality of units or means stated in the apparatus claims may also beimplemented by one unit or means by means of software or hardware. Theterms first and second and the like are used to represent names and donot represent any particular order.

What is claimed is:
 1. A method for searching information inapplications, the method comprising: determining at least one targetapplication carrying declaration information, wherein the declarationinformation comprises search interface information for searching thetarget application; sending a search keyword from a user to the targetapplication via the search interface information for the targetapplication; receiving search result information determined by thetarget application according to the search keyword, wherein the searchresult information comprises the search keyword and page paths of targetpages; and generating a search display list according to the searchresult information.
 2. The method according to claim 1, wherein thesearch display list comprises any combination of one or more of thesearch keyword, source application information of the target pages,summary information corresponding to the search keyword, and the pagepaths of the target pages.
 3. The method according to claim 2, whereingenerating the search display list according to the search resultinformation comprising: ranking the search result information accordingto a preset rule to obtain the search display list, where anycombination of one or more of the search keyword, source applicationinformation, summary information corresponding to the search keyword anda page path of a target page, which correspond to each of the targetpages, are sequentially displayed.
 4. The method according to claim 1,wherein determining at least one target application carrying thedeclaration information comprising at least any one of: determining atleast one target application carrying declaration information from alist of installed applications of a user equipment; obtaining, from anetwork device, a list of applications carrying declaration information,to select, from the list of applications, one or more targetapplications whose types are the same as those of applications in thelist of installed applications of the user equipment; and obtaining alist of historically installed applications of the user equipment, todetermine at least one target application carrying the declarationinformation from the list of historically installed applications.
 5. Themethod according to claim 3, wherein ranking the search resultinformation according to the preset rule comprising: ranking the searchresult information based on historical parameter informationcorresponding to the target pages, wherein the historical parameterinformation comprises installation time of source applications of thetarget pages, information on a number of clicks on the target pages bythe user, and dwell time on the target pages by the user.
 6. The methodaccording to claim 5, wherein ranking the search result informationbased on the historical parameter information corresponding to thetarget pages comprising: determining a weight value for each of thetarget pages based on the historical parameter information correspondingto the target pages and weight information corresponding to parametersin the historical parameter information; and ranking the search resultinformation according to the weight value for each of the target pages.7. The method according to claim 5, wherein ranking the search resultinformation based on the historical parameter information correspondingto the target pages comprising: determining a weight value for each ofthe target pages based on the historical parameter informationcorresponding to the target pages.
 8. The method according to claim 5,wherein determining a weight value for each of the target pages based onthe historical parameter information corresponding to the target pagescomprising: ranking the target pages according to the installation timeof the source applications of the target pages to obtain rankinformation; and grouping the target pages according to a preset timeunit and the installation time, and updating the weight value for eachof the target pages according to a number of groups and the rankinformation.
 9. The method according to claim 5, wherein the methodcomprising: Updating weight values for the target pages according to theinformation on the number of clicks on the target pages by the user. 10.The method according to claim 5, wherein the method comprising: updatingweight values for the target pages according to a preset length of timeand the dwell time on the target pages by the user.
 11. The methodaccording to claim 3, wherein after the search keyword and the sourceapplication information corresponding to each of the target pages fromthe search result information are sequentially displayed, the methodcomprising: jumping to a source application corresponding to a targetpage according to a user's selection operation and the page path, todisplay page contents information of the target page in the sourceapplication.
 12. A computer-readable medium having computer-readableinstructions stored thereon, the computer-readable instructions beingexecutable by a processor to implement the method as recited in claim 1.13. A device for searching for information in applications, the devicecomprising: one or more processors; and a memory storing computerreadable instructions, wherein the computer readable instructions, whenexecuted, cause the processor to perform operations of the method asrecited in claim 1.